@import 'base.mixin.less';

html,
body {
	.edge;
}

button {
	.edge;
	border: 0;
	background: none;
	font-size: 100%;
	vertical-align: baseline;
	font-family: inherit;
	color: inherit;
	.appearance;
}

body {
	font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
	line-height: 1.4em;
	background: #eaeaea url('bg.png');
	color: #4d4d4d;
	width: 550px;
	margin: 0 auto;
	.font-smoothing;
}

#todoapp {
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
	margin: 130px 0 40px 0;
	border: 1px solid #ccc;
	position: relative;
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2),
				0 25px 50px 0 rgba(0, 0, 0, 0.15);
	&:before {
		content: '';
		border-left: 1px solid #f5d6d6;
		border-right: 1px solid #f5d6d6;
		width: 2px;
		position: absolute;
		top: 0;
		left: 40px;
		height: 100%;
	}
	input::-webkit-input-placeholder {
		font-style: italic;
	}
	input:-moz-placeholder {
		font-style: italic;
		color: #a9a9a9;
	}
	h1 {
		position: absolute;
		top: -120px;
		width: 100%;
		font-size: 70px;
		font-weight: bold;
		text-align: center;
		color: #b3b3b3;
		color: rgba(255, 255, 255, 0.3);
		text-shadow: -1px -1px rgba(0, 0, 0, 0.2);
		.text-rendering();
	}
}

#header {
	padding-top: 15px;
	border-radius: inherit;
	&:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 15px;
		z-index: 2;
		border-bottom: 1px solid #6c615c;
		.linear-gradient(rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8), #9d8b83, #847670, #8d7d77);
		border-top-left-radius: 1px;
		border-top-right-radius: 1px;
	}
}

#new-todo,
.edit {
	position: relative;
	margin: 0;
	width: 100%;
	font-size: 24px;
	font-family: inherit;
	line-height: 1.4em;
	border: 0;
	outline: none;
	color: inherit;
	padding: 6px;
	border: 1px solid #999;
	box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
	.box-sizing;
	.font-smoothing;
}

#new-todo {
	padding: 16px 16px 16px 60px;
	border: none;
	background: rgba(0, 0, 0, 0.02);
	z-index: 2;
	box-shadow: none;
}

#main {
	position: relative;
	z-index: 2;
	border-top: 1px dotted #adadad;
}

label[for='toggle-all'] {
	display: none;
}

#toggle-all {
	position: absolute;
	top: -42px;
	left: -4px;
	width: 40px;
	text-align: center;
	border: none; /* Mobile Safari */
	&:before {
		content: '»';
		font-size: 28px;
		color: #d9d9d9;
		padding: 0 25px 7px;
	}
	&:checked:before {
		color: #737373;
	}
}

#todo-list {
	margin: 0;
	padding: 0;
	list-style: none;
	li {
		position: relative;
		font-size: 24px;
		border-bottom: 1px dotted #ccc;
		&.editing {
			border-bottom: none;
			padding: 0;
			.edit {
				display: block;
				width: 506px;
				padding: 13px 17px 12px 17px;
				margin: 0 0 0 43px;
			}
			.view {
				display: none;
			}
			&:last-child {
				margin-bottom: -1px;
			}
		}
		&:last-child {
			border-bottom: none;
		}
		.toggle {
			text-align: center;
			width: 40px;
			/* auto, since non-WebKit browsers doesn't support input styling */
			height: auto;
			position: absolute;
			top: 0;
			bottom: 0;
			margin: auto 0;
			border: none; /* Mobile Safari */
			-webkit-appearance: none;
			/*-moz-appearance: none;*/
			-ms-appearance: none;
			-o-appearance: none;
			appearance: none;
			&:after {
				content: '✔';
				line-height: 43px; /* 40 + a couple of pixels visual adjustment */
				font-size: 20px;
				color: #d9d9d9;
				text-shadow: 0 -1px 0 #bfbfbf;
			}
			&:checked:after {
				color: #85ada7;
				text-shadow: 0 1px 0 #669991;
				bottom: 1px;
				position: relative;
			}
		}
		label {
			word-break: break-word;
			padding: 15px;
			padding-left: 47px;
			margin-left: 45px;
			display: block;
			line-height: 1.2;
			.transition(0.4s, color);
			/* using csssprites */
			background: url(icons/icon_01.gif?__sprite) no-repeat 7px 12px;
			&.icon_2 {
				background: url(icons/icon_02.gif?__sprite) no-repeat 7px 12px;
			}
			&.icon_3 {
				background: url(icons/icon_03.gif?__sprite) no-repeat 7px 12px;
			}
			&.icon_4 {
				background: url(icons/icon_04.png?__sprite) no-repeat 7px 12px;
			}
			&.icon_5 {
				background: url(icons/icon_05.png?__sprite) no-repeat 7px 12px;
			}
			&.icon_6 {
				background: url(icons/icon_06.png?__sprite) no-repeat 7px 12px;
			}
		}
		&.completed label {
			color: #a9a9a9;
			text-decoration: line-through;
		}
		.destroy {
			display: none;
			position: absolute;
			top: 0;
			right: 10px;
			bottom: 0;
			width: 40px;
			height: 40px;
			margin: auto 0;
			font-size: 22px;
			color: #a88a8a;
			.transition;
			&:hover {
				text-shadow: 0 0 1px #000,
							 0 0 10px rgba(199, 107, 107, 0.8);
				.transform-scale(1.3);
			}
			&:after {
				content: '✖';
			}
		}
		&:hover {
			.destroy {
				display: block;
			}
		}
		.edit {
			display: none;
		}
	}
}

#footer {
	color: #777;
	padding: 0 15px;
	position: absolute;
	right: 0;
	bottom: -31px;
	left: 0;
	height: 20px;
	z-index: 1;
	text-align: center;
	&:before {
		content: '';
		position: absolute;
		right: 0;
		bottom: 31px;
		left: 0;
		height: 50px;
		z-index: -1;
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3),
					0 6px 0 -3px rgba(255, 255, 255, 0.8),
					0 7px 1px -3px rgba(0, 0, 0, 0.3),
					0 43px 0 -6px rgba(255, 255, 255, 0.8),
					0 44px 2px -6px rgba(0, 0, 0, 0.2);
	}
}

#todo-count {
	float: left;
	text-align: left;
}

#filters {
	margin: 0;
	padding: 0;
	list-style: none;
	position: absolute;
	right: 0;
	left: 0;
	li {
		display: inline;
		a {
			color: #83756f;
			margin: 2px;
			text-decoration: none;
			&.selected {
				font-weight: bold;
			}
		}
	}
}

#clear-completed {
	float: right;
	position: relative;
	line-height: 20px;
	text-decoration: none;
	background: rgba(0, 0, 0, 0.1);
	font-size: 11px;
	padding: 0 10px;
	border-radius: 3px;
	box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.2);
	&:hover {
		background: rgba(0, 0, 0, 0.15);
		box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.3);
	}
}

#info {
	margin: 65px auto 0;
	color: #a6a6a6;
	font-size: 12px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
	text-align: center;
	a {
		color: inherit;
	}
}
/*
	Hack to remove background from Mobile Safari.
	Can't use it globally since it destroys checkboxes in Firefox and Opera
*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	#toggle-all,
	#todo-list li .toggle {
		background: none;
	}

	#todo-list li .toggle {
		height: 40px;
	}

	#toggle-all {
		top: -56px;
		left: -15px;
		width: 65px;
		height: 41px;
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		-webkit-appearance: none;
		appearance: none;
	}
}

.hidden{
	display:none;
}
